package com.example.webmodule.properties;

import lombok.Data;
import lombok.ToString;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * @ClassName EY-TaskThreadPoolProperties
 * @Description com.example.webmodule.properties
 * @Author menyj
 * @Date 2025/3/19
 **/
@Data
@ToString
@Component
@ConfigurationProperties(prefix = "ey.task.thread-pool")
public class TaskThreadPoolProperties {
    private int corePoolSize = 1;
    private int maxPoolSize = Integer.MAX_VALUE;
    private int keepAliveSeconds = 60;
    private int queueCapacity = Integer.MAX_VALUE;
    private boolean allowCoreThreadTimeOut = false;
    private boolean prestartAllCoreThreads = false;
    private boolean strictEarlyShutdown = false;
    private String threadNamePrefix;
}
